﻿package net.area80.sitemanager
{
	import flash.display.DisplayObjectContainer;
	import flash.display.Loader;
	import flash.events.IEventDispatcher;
	import flash.net.URLRequest;
	import net.area80.sitemanager.display.IProgressClip;
	 
	/**
	* ISiteShell
	* @author Wissarut Pimanmassuriya
	*/
	public interface ISiteManager extends IEventDispatcher
	{
		trackURL:String;
		
		function get main ():DisplayObjectContainer;
		
		function getPermaString ():String;

		function loadPage (url:URLRequest, autoPlay:Boolean = true, onInit:Function = null, onOut:Function = null, extras:Object = null):void;
		function loadPageToTarget (url:URLRequest, target:Loader, progressClip:IProgressClip = null, autoPlay:Boolean = true, onInit:Function = null, onOut:Function = null, extras:Object = null):void;
		
		function freeze (callerObject:* = null):void;
		function unFreeze (callerObject:* = null):void;

		function track (page:String):void;
	}
	
}